package com.sise.bl.dao;

import com.sise.bl.entity.Product;

import java.util.List;

public interface ProductDao {
    /**
     * 根据类别 id 查询该类别的商品数量
     * @param tid  类别表的唯一标识
     * @return
     */
    Long selectCountByTid(Integer tid);

    /**
     * 分页查询
     * @param page  当前页面页数
     * @param pageSize  页面容量
     * @param tid    类别表的唯一标识
     * @return
     */
    List<Product> selectProductByPage(int page, int pageSize, Integer tid) ;

    /**
     * 根据商品 id 查询商品
     * @param pid
     * @return
     */
    Product selectProductByPid(Integer pid);

    int addProduct(Product product);

    /**
     * 查询所有书籍
     * @return
     */
    List<Product> selectAll();

    /**
     * 根据类别 id 查询商品
     * @param tid
     * @return
     */
    List<Product> selectByTid(Integer tid);

    /**
     * 删除商品
     * @param product
     */
    void deleteProduct(Product product);

    /**
     * 根据 类别id 删除该类别下的所有商品
     * @param tid
     */
    void deleteProductByTid(Integer tid);

    int updateProduct(Product product);
}
